Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Опрацювання файлів з текстовою інформацією

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2005
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Засоби системного програмування
Група:
КІ

Частина тексту файла

Міністерство освіти і науки України НУ ”Львівська політехніка” Кафедра ЕОМ Звіт про виконання лабораторної роботи №9 з курсу: „Засоби системного програмування” на тему Опрацювання файлів з текстовою інформацією Тема роботи: Опрацювання файлів з текстовою інформацією. Мета роботи: Закріпити теоретичні знання та оволодіти практичними навиками в створенні програм для опрацювання текстової інформації, що міститься в дискових файлах. Засвоїти основні методи читання, запису даних з дискових файлів текстового типу. Завдання на лабораторну роботу Розробити програмне забезпечення зі застосуванням техніки роботи з дисковими файлами відповідно до заданого варіанту. Програмне забезпечення повинно складатися з декількох модулів. Основна програма вводить та виводить дані які опрацьовуються функціями, що реалізовані як окремі модулі. Назву текстового файлу, в якому містяться дані для опрацювання, передавати через аргументи функції main(). Розміри та значення елементів матриць (в загальному не квадратних) вводити з текстового файлу. Параметри, що задають кількість рядків та стовпців повинні бути іменованими. Пам’ять під матриці виділяти динамічно. Для трикутних матриць (опираючись на їх структуру) виділяти мінімальні об’єми пам’яті. Обмін даними з функцією, що опрацьовує матрицю, виконувати через її аргументи. Результати обчислень записувати в текстовий файл. Назву файлу для запису результатів формувати на основі назви файлу з вхідними даними шляхом заміни розширення. Звернути особливу увагу на обробку помилок, які користувач може зробити при створені текстового файлу з вхідними даними. При вирішенні задач забезпечити дружній інтерфейс з користувачем. Індивідуальне завдання: Перестановка заданих (за запитом) рядків матриці Результати виконання роботи. Текст програми: n=3 m=3 6 5 1 5 4 9 7 3 2 int input(char *filename); int output(char *filename); # include <stdio.h> # include <conio.h> # include <string.h> # include "labst_9.h" FILE *fp,*fq; int m,n,*Matrix[100][100]; int main(int argc, char *argv[]) { int j,i,l1,l2,line[100]; char *filename; clrscr(); n=0;m=0; if (argc!=2) {printf("Eror..."); return 0;} else strcpy(filename,argv[1]); if (input(filename)==1) { for(i=0;i<n;i++) for(j=0;j<m;j++) printf("\n Matrix[%d][%d]=%d",i,j,*Matrix[i][j]); do { printf("\nEnter number of line1 to change line2"); scanf("%d %d",&l1,&l2); } while ((l1>=n)||(l2>=n)); for(j=0;j<m;j++) { line[j]=*Matrix[l1][j]; *Matrix[l1][j]=*Matrix[l2][j]; *Matrix[l2][j]=line[j]; } printf("\n Output results.."); for(i=0;i<n;i++) { printf("\n"); for(j=0;j<m;j++) printf("M[%d][%d]=%d ",i,j,*Matrix[i][j]); } *(filename+strlen(filename)-4)='\0'; strcat(filename,".out"); output(filename); } return 0; } # include <stdlib.h> # include <stdio.h> # include <string.h> extern FILE *fp; int input(char *filename) { char *tmp; extern int n,m,*Matrix[100][100]; int i,j; fp=fopen(filename,"rt"); fscanf(fp,"%s",tmp); if (strstr(tmp,"n=")!=NULL) sscanf((tmp+2),"%d",&n); else if (strstr(tmp,"m=")!=NULL) sscanf((tmp+2),"%d",&m); fscanf(fp,"%s",tmp); if (strstr(tmp,"n=")!=NULL) sscanf((tmp+2),"%d",&n); else if (strstr(tmp,"m=")!=NULL) sscanf((tmp+2),"%d",&m); for(i=0;i<n;i++) for(j=0;j<m;j++) if ((Matrix[i][j]=malloc(sizeof(int)))==NULL) { printf("Not enought memory!!!"); return 0; } for(i=0;i<n;i++) for(j=0;j<m;j++) { fscanf(fp,"%s",tmp); sscanf(tmp,"%d",Matrix[i][j]); } fclose(fp); if (n==0 || m==0) {printf("Eror..."); return 0;} else return 1; }; # include <stdio.h> extern FILE *fq; int output(char *filename) { extern int n,m,*Matrix[100][100]; int i,j; fq=fopen(filename,"wt"); if (fq==NULL) {puts("\nEror create output file!!!");return 0; } for(i=0;i<n;i++) { for(j=0;j<m;j++) { fprintf(fq,"%d",*Matrix[i][j]); fprintf(fq,"%s"," "); } fprintf(fq,"%s","\n"); } fclose(fq); return 1; } Внаслідок виконання програми на екрані отримаємо: ..\labst_8.exe 3 Висновок: на даній лабораторній роботі я оволодів практичними навиками роботи з текстовими файлами на мові Сі.
Антиботан аватар за замовчуванням

25.12.2011 10:12

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини